A network consists of two or more nodes connected with one another to share resources, such as files or printers. A node is an addressable point in a network and may be a computer system, a computer terminal or a peripheral device like a printer. Each node on a network has a distinct address. A link is a communication path between two nodes.
Typically, nodes exchange information in the form of a series of bits with a definite beginning and a definite end. The information is sent as a single message, called a packet. As well as the information to be exchanged, a packet includes information about itself in the part of the packet called the header. The packet header might include the address of the source node, the address of the destination node, the size of the packet and a checksum. The checksum is a mechanism for detecting errors which allows the destination node to determine whether the packet received from the source node is the same as the packet sent. The checksum is necessary as the packet may have changed because of problems with communication between nodes on the route that the packet followed through the network. The checksum permits errors to be detected.
The movement of packets through a network is called traffic. Often, traffic on a link between two nodes has certain requirements for throughput, bandwidth or quality of service. Throughput is a measure of the rate of information transfer while bandwidth represents the difference between the highest and lowest transmission frequencies of a communication link. Quality of service characteristics may include cost, delay, delay variability and error probability of a link.
To permit nodes of a network to communicate with one another there must be an agreed method to exchange information, called a protocol. The information in a packet header may be organized according to the rules set out in a particular protocol.
In an individual network, an office for example, nodes connected to each other use a common protocol to communicate. However, a problem arises when a node of one network wishes to send information to a node of another network, which may not use the same protocol. TCP/IP (Transmission Control Protocol/Internet Protocol) is an example of a protocol. It is a set of rules developed to connect networks of various types in a large network. In the network of networks defined by TCP/IP, information may be shared over larger geographical distances and between more nodes.
Each node wishing to communicate with other nodes using TCP/IP is assigned a unique Internet Protocol (IP) address. The IP address is assigned in addition to any other address the node may already have as part of a different protocol within the local network. An IP address is a 32 bit value that, by convention, is written as four decimal values, each representing eight bits of the address, separated by a period. 130.232.68.21 is an example of this format .
Another technology that allows a network of networks is Asynchronous Transfer Mode (ATM). ATM is a standard that defines high-load, high-speed, fixed-size packet switching with dynamic bandwidth allocation. A node in an ATM network has an address with three fields, each 20 bytes in length, identifying country, area and destination system.
In the case of a node on one network wishing to send information to a node on another network, the packets are sent through a device called a router. A router is a node that connects one network with one or more other networks. The purpose of the router is to read the packet header information for the address of the node for which the packet is intended and to decide, based on information contained within the packet header and in conjunction with route tables and classification of the packet, where and how to forward the packet to the next node. The decision results in another link being established in an overall transmission path of the packet from the source node to the destination node, possibly through several intermediate nodes.
Internet Protocol (IP) networks are a subset of Broadcast Multi-Access (BMA) networks whose design allows the addressing of a message from a single source node to every node on a network (broadcast). Each node of a particular network may have the first three fields in their IP addresses in common. To send information to all nodes in a such a network, one could address the information to 130.232.68.*, where"*" represents all of the possible values of one byte. A byte consists of eight bits and may represent a value between 0 and 255 in binary arithmetic.
ATM networks, which are an example of Non-Broadcast Multi-Access (NBMA) networks, require more specific addressing. Since nodes on an ATM network share the first two address fields with nodes in other networks, broadcasting information as is done in an IP network is not possible. Other examples of NBMA networks include the Public Switched Telephone Network (PSTN) and Synchronous Optical Networks (SONET). PSTN is the familiar public telephone network. SONET is a high speed optical network.
Multimedia traffic involving voice and video services has more requirements for increased data throughput and connection controls on IP networks than the requirements for non-multimedia traffic. The bandwidth, throughput and connection controls required for certain of these multimedia applications can be provided by transmitting packets over secondary path connections involving ATM, PSTN or SONET instead of over the BMA (IP) network. For instance, a path between two nodes made up of five links when implemented with TCP/IP might provide greater throughput if three of the intermediate TCP/IP links are replaced by one ATM link. Therefore, multimedia application communication can be achieved by combining aspects of BMA networks using IP with aspects of NBMA networks. However, such NBMA networks may employ addressing conventions that do not follow the addressing conventions as exhibited by IP BMA networks. In other words, the BMA address and NBMA address for a particular node will be different. Hence, to establish a transmission path for multimedia communications over a secondary path connection requires the discovery of a secondary path address. The secondary path could be used to replace or augment the existing IP path. The discovery of a secondary path address corresponding to a destination node BMA address is referred to as "address resolution".
Existing solutions to resolving addresses between networks with different protocols, such as the Next Hop Resolution Protocol (NHRP) and NBMA Address Resolution Protocol (NARP), have a number of disadvantages. Address resolution schemes such as NARP and NHRP do not cross the border of an NBMA subnetwork and as such, all IP traffic between two subnetworks must traverse an IP router at the border. These methods also involve servers that resolve the NBMA addressing. Each node must be either a server or a client of a server and subsequently servers must exist at each hop along the path between a source client and a destination client. This requirement for contiguous deployment of NHRP capable routers within an NBMA subnetwork means that during a migration to an NHRP capable network, failure to establish a secondary path connection will occur if there are routers along the path which have not been upgraded to NHRP.
Furthermore, resolution of IP addresses to other networking addresses can result in significant delays in connection establishment between two nodes.